#include "Staff.h"

int Staff::getType()
{
	return STAFF;
}

Staff::Staff(char* name, Date birthday, int id, int depId, Date joinedDate, int level) : People(name, birthday, id)
{
	setDepartmentId(depId);
	setJoinedDate(joinedDate);
	setLevel(level);
}

void Staff::PrintInfo(){
	People::PrintInfo();

	cout << "Department Id: " << depId << endl;
	cout << "Joined date: ";
	joinedDate.display();
	cout << "Level: " << level << endl;
}
void Staff::PrintInfo(ostream &out)
{
	People::PrintInfo(out);

	out << "Department Id: " << depId << endl;
	out << "Joined date: ";
	joinedDate.display(out);
	out << "Level: " << level << endl;
}
int Staff::getDepartmentId(){
	return depId;
}
Date Staff::getJoinedDate(){
	return joinedDate;
}
int Staff::getLevel(){
	return level;
}

void Staff::setDepartmentId(int depId)
{
	this->depId = depId;
}
void Staff::setJoinedDate(Date joinedDate)
{
	this->joinedDate = joinedDate;
}
void Staff::setLevel(int level)
{
	this->level = level;
}

void* Staff::Clone()
{
	return new Staff(*this);
}
